package com.sr.test;

import java.net.*;
import java.io.*;

public class SocketClient {
    /*    用服务器的IP地址和端口号实例化Socket对象。
        调用connect方法，连接到服务器上。
        获得Socket上的流，把流封装进BufferedReader/PrintWriter的实例，以进行读写
        利用Socket提供的getInputStream和getOutputStream方法，通过IO流对象，向服务器发送数据流
        关闭打开的流和Socket。*/
    public static void main(String[] args) throws IOException {
        //1、创建客户端Socket，指定服务器地址和端口
        Socket socket =new Socket("127.0.0.1",10086);
        //2、获取输出流，向服务器端发送信息
        OutputStream os = socket.getOutputStream();//字节输出流
        PrintWriter pw =new PrintWriter(os);//将输出流包装成打印流
        pw.write("用户名：admin；密码：admin");
        pw.flush();
        socket.shutdownOutput();
        //3、获取输入流，并读取服务器端的响应信息
        InputStream is = socket.getInputStream();
        BufferedReader br = new BufferedReader(new InputStreamReader(is));
        String info = null;
        while((info=br.readLine()) != null){
            System.out.println("Hello,我是客户端，服务器说："+info);
        }
        //4、关闭资源
        br.close();
        is.close();
        pw.close();
        os.close();
        socket.close();
    }
}
